<?php
/**
 ***********************************************************************************************************************
 * Thor(雷神) 数据模型规范接口类
 ***********************************************************************************************************************
 */

namespace artisan\thor;

/**
 * Interface model
 * @package artisan\thor
 */
interface model
{
    /**
     * 添加
     * @return int
     */
    public function add(array $dict);

    /**
     * 更新
     * @return bool
     */
    public function set(array $condition, array $dict);

    /**
     * 删除
     * @return bool
     */
    public function del(array $condition);

    /**
     * 获取（单条）
     * @return array
     */
    public function get(array $condition, $select = '*');

    /**
     * 表主键（唯一自增ID）
     * @return string
     */
    public function ident();

    /**
     * 其他唯一索引字段和主键自增字段的映射关系
     * @return array
     */
    public function unique();

    /**
     * 表名
     * @return string
     */
    public function table();


}